# coding=utf-8

import web

import settings, utils

from controllers.users import UserSession

render = settings.RENDER

class login(object):
    def GET(self):
        session = UserSession.current()
        if session.logined:
            # 已经登录过了
            # 直接显示登录成功
            return render.users.login_success(id = session.uid
                    , name = session.name)

        # 获取验证回调参数
        query = web.input(code = False)
        # 如果参数有效，说明是回调请求
        if query.code:
            # 如果是验证后返回
            # 这里进行登录操作，记录各种需要记入cookie的信息
            if session.oauth_save_login(query.code):
                # 登录成功
                return render.users.login_success(id = session.uid
                                                , name = session.name)
        else:
            # 其他情况显示默认界面
            return render.users.login(login_uri = session.oauth_init())
